Field of the Various Embodiments
The various embodiments relate generally to navigation subsystems and, more specifically, to extrapolating speed limits within road graphs.
Description of the Related Art
Many vehicles include navigation applications that perform navigation-related activities based on satellite navigation devices (e.g., global positioning system devices) and road graphs that specify underlying, physical road networks. A road graph typically represents each road segment (i.e., a portion of a road) as an edge that extends between two nodes, where each node represents an intersection. To enable a wide range of navigation-related activities, road network graphs are typically configured to associate data with edges and nodes via attributes. For instance, a speed limit attribute associates a speed limit applicable to vehicles traveling along a road segment with an edge representing the road segment. Speed limit attributes enable navigation applications to estimate travel times, generate warnings when a speed limit is exceeded, and so forth.
In one approach to generating speed limit attributes, road graph providers rely on observations of speed limit signs by vehicles traveling along road segments. For each speed limit sign, a data collection application identifies an edge of the road network graph as a matching edge based, at least in part, on a distance between an observed position of the speed limit sign and the edge. The attribute application then generates a speed limit attribute that associates the speed limit specified by the speed limit sign with the road segment associated with the matching edge.
One limitation of the attribute application is that the attribute application associates a speed limit specified via a speed limit sign with only one road segment. By contrast, a speed limit sign often specifies a speed limit that is applicable to multiple road segments, as dictated by local traffic laws. Consequently, a navigation application that relies on the road graph may not be able to reliably perform certain navigation-related activities.
For example, suppose that a speed limit sign specifying 35 MPH lies along a road segment A, and the speed limit sign is applicable to both the road segment A and a subsequent road segment B. The speed limit application would generate a speed limit attribute that associates a 35 MPH speed limit with the road segment A. If the speed of a vehicle traveling along the road segment A exceeds the actual speed limit of 35 MPH, then a navigation application would determine that the speed of the vehicle exceeds the speed limit based on the speed limit attribute. As a result, the navigation application would display a warning to the driver. By contrast, if the speed of the vehicle while traveling along the road segment B exceeds the actual speed limit of 35 MPH, then the navigation application would not be able to identify the speed limit and would not display a warning to the driver.
As the foregoing illustrates, more effective techniques for associating speed limits with road segments would be useful.